home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 7: Sunsite / Linux Cubed Series 7 - Sunsite Vol 1.iso / system / network / admin / dig-2.0 / dig-2 / dig.2.0 / qtime.c < prev    next >
Encoding:
C/C++ Source or Header  |  1990-09-04  |  944 b   |  56 lines

  1.  
  2. /*
  3. ** Written with 'dig' version 2.0 from University of Southern
  4. ** California Information Sciences Institute (USC-ISI). 9/1/90
  5. */
  6.  
  7. #include "qtime.h"
  8.  
  9. static int qptr = 0;
  10. struct timelist _qtime[HMAXQTIME];
  11. struct timeval hqtime;
  12. u_short hqcount, hxcount;
  13.  
  14. struct timeval
  15. *findtime(id)
  16.      u_short id;
  17. {
  18. int i;
  19.   for (i=0; i<HMAXQTIME; i++)
  20.     if (_qtime[i].id == id)
  21.       return(&(_qtime[i].time));
  22.   return(NULL);
  23. }
  24.  
  25.  
  26. savetime(id,t)
  27.      u_short id;
  28.      struct timeval *t;
  29. {
  30. qptr = ++qptr % HMAXQTIME;
  31. _qtime[qptr].id = id;
  32. _qtime[qptr].time.tv_sec = t->tv_sec;
  33. _qtime[qptr].time.tv_usec = t->tv_usec;
  34. }
  35.  
  36.  
  37. struct timeval
  38. *difftv(a,b,tmp)
  39.      struct timeval *a, *b, *tmp;
  40. {
  41.   tmp->tv_sec = a->tv_sec - b->tv_sec;
  42.   if ((tmp->tv_usec = a->tv_usec - b->tv_usec) < 0) {
  43.     tmp->tv_sec--;
  44.     tmp->tv_usec += 1000000;
  45.   }
  46. return(tmp);
  47. }
  48.  
  49.  
  50. prnttime(t)
  51.      struct timeval *t;
  52. {
  53. printf("%u msec ",t->tv_sec * 1000 + (t->tv_usec / 1000));
  54. }
  55.  
  56.